package com.zhtx.debt.customer.entity;

import lombok.Data;

import javax.persistence.*;
import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 客户版本管理
 */
@Table(name = "zs_customer_version")
@Entity
@Data
public class ZsCustomerVersion implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * ID
     */
    @Id
    @Column(name = "id", insertable = false, nullable = false)
    private String id;

    /**
     * 客户姓名
     */
    @Column(name = "name", nullable = false)
    private String name;

    /**
     * 客户证件号
     */
    @Column(name = "id_card", nullable = false)
    private String idCard;

    /**
     * 客户手机号
     */
    @Column(name = "mobile_phone")
    private String mobilePhone;

    /**
     * 地址
     */
    @Column(name = "address")
    private String address;

    /**
     * 证件号类型（0大陆，1台湾，2港澳）
     */
    @Column(name = "card_type", nullable = false)
    private Integer cardType;

    /**
     * 客户ID
     */
    @Column(name = "customer_id", nullable = false)
    private String customerId;

    /**
     * 版本号
     */
    @Column(name = "version", nullable = false)
    private Integer version;

    /**
     * 客户类型（0 企业,1 个人）
     */
    @Column(name = "customer_type", nullable = false)
    private Integer customerType;

    /**
     * 是否从业（0否，1是）
     */
    @Column(name = "prac", nullable = false)
    private Integer prac;

    /**
     * 性别(0女,1男)
     */
    @Column(name = "sex", nullable = false)
    private Integer sex;

    /**
     * 审核状态（0已提交，1审核通过，2不通过）
     */
    @Column(name = "audit_status", nullable = false)
    private Integer auditStatus = 0;

    /**
     * 客户公司类型 0 普通企业 1社会团体 2事业单位 3 民办非企业单位 4 党政及国家单位
     */
    @Column(name = "organ_type")
    private Integer organType;

    /**
     * 企业注册类型 0 组织机构代码号 1 多证合一 2 企业工商注册码
     */
    @Column(name = "organ_reg_type")
    private Integer organRegType;

    /**
     * 法人姓名
     */
    @Column(name = "legal_name")
    private String legalName;

    /**
     * 法人证件号
     */
    @Column(name = "legal_id_card")
    private String legalIdCard;

    /**
     * 法人手机号
     */
    @Column(name = "legal_mobile")
    private String legalMobile;

    /**
     * 实名要素（2 两要素，3 三要素 4 四要素 ）
     */
    @Column(name = "real_name_auth", nullable = false)
    private Integer realNameAuth;

    /**
     * 机构ID
     */
    @Column(name = "org_id")
    private String orgId;

    /**
     * 客户分类（0个债系统， 1企债系统）
     */
    @Column(name = "system_type", nullable = false)
    private Integer systemType;

    /**
     * 实名是否通过（0未实名，1实名通过，2实名未通过）
     */
    @Column(name = "authentication_result", nullable = false)
    private Integer authenticationResult;

    @Column(name = "bank_account")
    private String bankAccount;

    @Column(name = "brank_name")
    private String brankName;

    /**
     * 创建人ID
     */
    @Column(name = "create_by", nullable = false)
    private String createBy;

    /**
     * 创建人姓名
     */
    @Column(name = "create_name")
    private String createName;

    /**
     * 创建时间
     */
    @Column(name = "create_date", nullable = false)
    private LocalDateTime createDate;

    /**
     * 修改人ID
     */
    @Column(name = "update_by")
    private String updateBy;

    /**
     * 修改人姓名
     */
    @Column(name = "update_name")
    private String updateName;

    /**
     * 修改时间
     */
    @Column(name = "update_date")
    private LocalDateTime updateDate;

    /**
     * 附件
     */
    @Transient
    private String file;

    @Transient
    private String departName;

    
}